草庐IT

Delphi XE 构建事件.. 全局?

全部标签

javascript - Ember.js - 在 Controller /路由器链上传播事件

在Ember.js中,未在Controller中处理的事件沿路由器链传播到应用程序路由(有关更多详细信息,请参阅http://emberjs.com/guides/views/handling-events/)。有没有办法在Controller中定义一个事件处理程序,允许事件继续传播到路由器?App.SampleController=Ember.ObjectController.extend({myEvent:function(obj){this.set('aVariable',true);}});App.ApplicationRoute=Ember.Route.extend({eve

javascript - 如何与 ng-switch 中的全局变量进行比较

我正在使用AngularJS$rootScope对象来公开一些需要Controller和View都可以访问的全局常量:varapp=angular.module('myApp',[]);app.run(function($rootScope){$rootScope.myConstant=2;});当我尝试在View中呈现全局值时,它可以正常工作:{{myConstant}}同样,如果我在ng-if条件中引用全局值,它也有效:Conditionalcontent.但是,当尝试在ng-switchblock中使用相同的值进行比较时,它永远不会计算为真。ThisJSFiddle展示了我试图让

javascript - DOM 事件总是单线程运行吗?

所以我answeredaquestion最近,OP问我是否可以在我的回答中添加以下关于DOM事件的内容:Maybeyoucouldalsoaddtoyouranswerthatnotonlytheyareexecutedfirst,butthesubsequenteventisblockeduntilthefirstonefinishes.那么,可以我添加吗?我是否知道DOM事件将一次运行一个事件,并会等待前一个事件结束,然后再开始下一个事件?我是否至少知道在浏览器JavaScript中总是如此?到目前为止,要找到一个决定性的答案出乎意料地困难,我期待着"is",但我就是找不到。澄清:

javascript - Paper.js 中的事件处理程序

我是Paper.js的新手,在阅读教程时,我对事件系统感到疑惑。这就是tutorial中描述的事件处理方式:varpath;functiononMouseDown(event){//Createapath:path=newPath();path.strokeColor='black';//Addthemousedownposition:path.add(event.point);}functiononMouseUp(event){//Addthemouseupposition:path.add(event.point);}所以,它只是在全局命名空间中起作用...最后我有几个问题,我没有

javascript - 如果手动切换翻转开关,如何仅触发事件

我创建了一个像这样的jQueryMobile翻转开关LionRose我听着这个翻转开关的变化$(document).on('change','#flip',function(e){console.log('changed');}但我不希望如果我将翻转开关的值更改为$('#flip').val('flower').flipswitch('refresh');如何通过直接与翻转开关交互或设置值并刷新翻转开关来检查翻转开关是否已更改?我在thisJSFiddle下创建了一个不良行为示例. 最佳答案 您需要使用.on()附加change事件

javascript - 如何使用 gulp 构建 JavaScript 包?

我想使用gulp构建JavaScript文件包。例如我的项目中有以下结构:/vendor/vendor1/vendor1.js/vendor/vendor2/vendor2.js/js/includes/include1.js/js/includes/include2.js/js/bundle1.js/js/bundle2.js有vendor包含(1-2)、本地包含(3-4)和捆绑文件(5-6)。vendor包括的只是随bower安装的第三方JavaScript库或composer.它们可以是CommonJS、AMD或者只是一个普通的jQuery插件。我想像这样在捆绑文件中指定依赖项:

javascript - 为什么我不能使用 addEventListener 来停止上下文菜单事件?

我想禁止鼠标右键。但我发现如果我这样写:document.addEventListener('contextmenu',function(event){returnfalse;},false);它不会起作用,事件仍然会起作用。但是如果我这样写,document.oncontextmenu=function(){returnfalse;}鼠标右键不起作用。我想知道为什么我不能使用addEventListener来停止事件contextmenu。 最佳答案 如“PreventingtheBrowser'sDefaultAction”中所

javascript - JavaScript 事件监听器是否自动清理?

元素从DOM中移除后,其事件监听器是否会自动注销并清除其引用的资源(闭包)?如果是,如果某些非事件监听器代码持有对该元素的引用,答案会改变吗?我特别关心的是“伪导航”,其中unload事件被触发并且大部分文档被替换(当然许多替换元素也注册了事件监听器),但可能有在另一个整页加载发生之前的几个伪导航。所以我想知道是否有必要跟踪所有添加的事件监听器并在unload触发时手动删除它们以避免泄漏它们引用的任何资源。(注意:在我的例子中,“使用jQuery/[其他js库]来处理它”不是一个有效的解决方案。我感兴趣的是与IE8+和其他浏览器的相当新版本的兼容性。) 最佳

javascript - 避免多次添加事件

我正在使用addEvent("keydown",function(){});向元素动态添加事件。我的问题是有时这段代码会在同一个元素上运行两次或更多次。随着为该事件注册的函数运行几次,行为变得笨拙。有没有办法让我在一个元素上只运行一次上面的代码?也许检查之前是否已经添加了事件? 最佳答案 要么不要每次都使用一个新函数,要么使用一个类或其他东西来告诉你你已经添加了它。不是每次都使用新函数MooTools的addEvent是addEventListener/attachEvent的一个相当薄的包装器,它不会添加相同的函数两次。因此,如果

javascript - Usemin 和多个构建配置

以下是我的index.html文件中的示例usemin构建配置对于开发版本,我不想缩小脚本,我希望每个模块都放入自己的js文件中。所以运行后的index.html将是对于生产版本,我想缩小脚本并将它们连接到一个文件中。所以index.html将是我尝试了以下方法,但它不起作用:然后像这样运行use-min任务(prod将在prod任务中设置为true,在dev任务中设置为false)-usemin({myApp:prod?[uglify({mangle:true})]:'',js:prod?'':[uglify({mangle:false})]}).我可以保留两个index.html文